﻿<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=0">
    <title>Ant Design of Blazor</title>
    <base href="/" />
    <link rel="icon" href="logo.png" type="image/x-icon">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2.6.3/dist/cdn/docsearch.min.css" />
    <link href="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_content/AntDesign.Docs/css/docs.default.css" rel="stylesheet">
    <link href="manifest.json" rel="manifest" />
    <link rel="stylesheet/less" type="text/css" href="_content/AntDesign.Docs/color.less">
</head>

<body>
    <noscript>Out-of-the-box mid-stage front/design solution!</noscript>
    <app>
        <div id="root">
            <style>
                html,
                body,
                #root {
                    height: 100%;
                    margin: 0;
                    padding: 0;
                }

                #root {
                    background-image: url("_content/AntDesign.Docs/home_bg.png");
                    background-repeat: no-repeat;
                    background-size: 100% auto;
                }

                .page-loading-warp {
                    padding: 98px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }

                .ant-spin {
                    -webkit-box-sizing: border-box;
                    box-sizing: border-box;
                    margin: 0;
                    padding: 0;
                    color: rgba(0, 0, 0, 0.65);
                    font-size: 14px;
                    font-variant: tabular-nums;
                    line-height: 1.5;
                    list-style: none;
                    -webkit-font-feature-settings: 'tnum';
                    font-feature-settings: 'tnum';
                    position: absolute;
                    display: none;
                    color: #1890ff;
                    text-align: center;
                    vertical-align: middle;
                    opacity: 0;
                    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
                    transition: -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
                    transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
                    transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86), -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
                }

                .ant-spin-spinning {
                    position: static;
                    display: inline-block;
                    opacity: 1;
                }

                .ant-spin-dot {
                    position: relative;
                    display: inline-block;
                    font-size: 20px;
                    width: 20px;
                    height: 20px;
                }

                .ant-spin-dot-item {
                    position: absolute;
                    display: block;
                    width: 9px;
                    height: 9px;
                    background-color: #1890ff;
                    border-radius: 100%;
                    -webkit-transform: scale(0.75);
                    -ms-transform: scale(0.75);
                    transform: scale(0.75);
                    -webkit-transform-origin: 50% 50%;
                    -ms-transform-origin: 50% 50%;
                    transform-origin: 50% 50%;
                    opacity: 0.3;
                    -webkit-animation: antSpinMove 1s infinite linear alternate;
                    animation: antSpinMove 1s infinite linear alternate;
                }

                    .ant-spin-dot-item:nth-child(1) {
                        top: 0;
                        left: 0;
                    }

                    .ant-spin-dot-item:nth-child(2) {
                        top: 0;
                        right: 0;
                        -webkit-animation-delay: 0.4s;
                        animation-delay: 0.4s;
                    }

                    .ant-spin-dot-item:nth-child(3) {
                        right: 0;
                        bottom: 0;
                        -webkit-animation-delay: 0.8s;
                        animation-delay: 0.8s;
                    }

                    .ant-spin-dot-item:nth-child(4) {
                        bottom: 0;
                        left: 0;
                        -webkit-animation-delay: 1.2s;
                        animation-delay: 1.2s;
                    }

                .ant-spin-dot-spin {
                    -webkit-transform: rotate(45deg);
                    -ms-transform: rotate(45deg);
                    transform: rotate(45deg);
                    -webkit-animation: antRotate 1.2s infinite linear;
                    animation: antRotate 1.2s infinite linear;
                }

                .ant-spin-lg .ant-spin-dot {
                    font-size: 32px;
                    width: 32px;
                    height: 32px;
                }

                    .ant-spin-lg .ant-spin-dot i {
                        width: 14px;
                        height: 14px;
                    }

                @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
                    .ant-spin-blur {
                        background: #fff;
                        opacity: 0.5;
                    }
                }

                @-webkit-keyframes antSpinMove {
                    to {
                        opacity: 1;
                    }
                }

                @keyframes antSpinMove {
                    to {
                        opacity: 1;
                    }
                }

                @-webkit-keyframes antRotate {
                    to {
                        -webkit-transform: rotate(405deg);
                        transform: rotate(405deg);
                    }
                }

                @keyframes antRotate {
                    to {
                        -webkit-transform: rotate(405deg);
                        transform: rotate(405deg);
                    }
                }
            </style>
            <div style="display: flex; justify-content: center; align-items: center; flex-direction: column; min-height: 420px; height: 100%;">
                <img src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/logo.png" alt="logo" width="256">
                <div class="page-loading-warp">
                    <div class="ant-spin ant-spin-lg ant-spin-spinning">
                        <span class="ant-spin-dot ant-spin-dot-spin">
                            <i class="ant-spin-dot-item"></i>
                            <i class="ant-spin-dot-item"></i>
                            <i class="ant-spin-dot-item"></i>
                            <i class="ant-spin-dot-item"></i>
                        </span>
                    </div>
                </div>
                <div style="display: flex; justify-content: center; align-items: center;">
                    <img src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/logo.png" width="32" style="margin-right: 8px;"> Ant Design of Blazor
                </div>
            </div>
        </div>
        <div style="display:none;" id="lang-alert" class="ant-modal-root">
            <div class="ant-modal-mask"></div>
            <div tabindex="-1" class="ant-modal-wrap" role="dialog">
                <div role="document" class="ant-modal ant-modal-confirm ant-modal-confirm-confirm" style="width: 416px; transform-origin: 434px 248px;">
                    <div tabindex="0" aria-hidden="true" style="width: 0px; height: 0px; overflow: hidden; outline: none;"></div>
                    <div class="ant-modal-content">
                        <div class="ant-modal-body">
                            <div class="ant-modal-confirm-body-wrapper">
                                <div class="ant-modal-confirm-body">
                                    <span role="img" aria-label="exclamation-circle" class="anticon anticon-exclamation-circle">
                                        <svg viewBox="64 64 896 896" focusable="false" data-icon="exclamation-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"></path></svg>
                                    </span>
                                    <span class="ant-modal-confirm-title">提示</span>
                                    <div class="ant-modal-confirm-content">建议中国内地用户访问国内镜像站点，加载更快！</div>
                                </div><div class="ant-modal-confirm-btns">
                                    <button type="button" class="ant-btn" onclick="cancel();"><span>取 消</span></button>
                                    <a class="ant-btn ant-btn-primary" href="https://ant-design-blazor.gitee.io/zh-CN/"><span>确 定</span></a>
                                </div>
                            </div>
                        </div>
                    </div><div tabindex="0" aria-hidden="true" style="width: 0px; height: 0px; overflow: hidden; outline: none;"></div>
                </div>
            </div>
        </div>
        <script>
            var alert = document.querySelector('#lang-alert');

            !function () {
                var lang = navigator.language || navigator.userLanguage;
                lang = lang.substr(0, 2);
                if (lang == 'zh' && location.hostname == "antblazor.com") {
                    setTimeout(function () {
                        alert.style.display = 'block';
                    }, 5000);
                }
            }();

            function cancel() {
                alert.style.display = 'none';
            }
        </script>
    </app>
    <!-- Start Single Page Apps for GitHub Pages -->
    <script type="text/javascript">
        // Single Page Apps for GitHub Pages
        // https://github.com/rafrex/spa-github-pages
        // Copyright (c) 2016 Rafael Pedicini, licensed under the MIT License
        // ----------------------------------------------------------------------
        // This script checks to see if a redirect is present in the query string
        // and converts it back into the correct url and adds it to the
        // browser's history using window.history.replaceState(...),
        // which won't cause the browser to attempt to load the new url.
        // When the single page app is loaded further down in this file,
        // the correct url will be waiting in the browser's history for
        // the single page app to route accordingly.
        (function (l) {
            if (l.search) {
                var q = {};
                l.search.slice(1).split('&').forEach(function (v) {
                    var a = v.split('=');
                    q[a[0]] = a.slice(1).join('=').replace(/~and~/g, '&');
                });
                if (q.p !== undefined) {
                    window.history.replaceState(null, null,
                        l.pathname.slice(0, -1) + (q.p || '') +
                        (q.q ? ('?' + q.q) : '') +
                        l.hash
                    );
                }
            }
        }(window.location))
    </script>
    <!-- End Single Page Apps for GitHub Pages -->

    <script src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_content/AntDesign.Charts/g2plot.js"></script>
    <script src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_content/AntDesign.Charts/ant-design-charts-blazor.js"></script>
    <script src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_content/AntDesign/js/ant-design-blazor.js"></script>
    <script src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_content/AntDesign.Docs/js/prism.js"></script>
    <script>
        window.AntDesign.Prism = {};
        window.AntDesign.Prism.highlight = function (code, language) {
            return Prism.highlight(code, Prism.languages[language], language);
        }

        window.AntDesign.Prism.highlightAll = function () {
            Prism.highlightAll();
        }

        window.less = {
            async: true
        };

        window.changeColor = function (hex, ref) {
            window.less
                .modifyVars({
                    '@primary-color': hex
                }).then(() => ref.invokeMethodAsync('OnColorChanged'))
        }
    </script>

    <!-- use compression via https://docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/webassembly?view=aspnetcore-5.0#compression -->
    <script src="https://cdn.jsdelivr.net/gh/google/brotli/js/decode.js"></script>
    <script src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_framework/blazor.webassembly.js" autostart="false"></script>
    <script>
        Blazor.start({
            loadBootResource: function (type, name, defaultUri, integrity) {
                if (type !== 'dotnetjs' && location.hostname !== 'localhost') {
                    return (async function () {
                        defaultUri = 'https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/' + defaultUri;
                        const response = await fetch(defaultUri + '.br', { cache: 'no-cache' });
                        if (!response.ok) {
                            throw new Error(response.statusText);
                        }
                        const originalResponseBuffer = await response.arrayBuffer();
                        const originalResponseArray = new Int8Array(originalResponseBuffer);
                        const decompressedResponseArray = BrotliDecode(originalResponseArray);
                        const contentType = type ===
                            'dotnetwasm' ? 'application/wasm' : 'application/octet-stream';
                        return new Response(decompressedResponseArray,
                            { headers: { 'content-type': contentType } });
                    })();
                }
            }
        });
    </script>
    <script src="https://cdn.jsdelivr.net/npm/docsearch.js@2.6.3/dist/cdn/docsearch.min.js" integrity="sha256-qybEsgf0PGiQS22AmoozPs09oRnSC7Gu7eBu4fbS2Ac=" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/gh/ant-design-blazor/ant-design-blazor.github.io@{version}/_content/AntDesign.Docs/js/docsearch.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/less@2.7.2/dist/less.min.js"></script>
    <script>navigator.serviceWorker.register('service-worker.js');</script>
</body>
</html>